/**
 * Copyright (c) 2015-2030 by Beijing Yanlight Co., Ltd.
 * All rights reserved.
 */
package com.yanlight.app.dal.dao;

import com.yanlight.app.dal.dto.PaycodeQuery;
import com.yanlight.app.dal.entity.PayCode;

import java.util.Collection;
import java.util.List;

/**
 * @author haolw
 * @time 2017/12/29
 */
public interface PaycodeDAO {

    PayCode findById(Integer id);

    List<PayCode> findByCompanyId(Integer companyId);

    List<PayCode> findListByAlias(String alias);

    int count(PaycodeQuery query);

    List<PayCode> findPage(PaycodeQuery query);

    List<PayCode> findByIds(Collection<Integer> ids);

    List<PayCode> findAvailables(Integer companyId);

    int save(PayCode code);

    int modifyStatus(int id, Integer status);

    int modify(PayCode code);

    int deleteByCompanyId(Integer id);

    PayCode findByValue(String value);

    int update(PayCode payCode);
}
